TypeScript: Modern JavaScript Development by Remo H. Jansen & Vilic Vane & Ivo Gabe de Wolff
Author:Remo H. Jansen & Vilic Vane & Ivo Gabe de Wolff
Language: eng
Format: mobi
Publisher: Packt Publishing
Published: 2016-12-21T23:00:00+00:00
set<T, TExtra extends ServerDataItemExtra>(
id: string,
item: ServerDataItem<T> & Textra
): void {
this.items[id] = item;
}
getAll<T, TExtra extends ServerDataItemExtra>():
(ServerDataItem<T> & TExtra)[] {
let items = this.items;
return Object
.keys(items)
.map(id => items[id] as ServerDataItem<T> & TExtra);
}
You may have noticed from the interfaces and generics that I've also torn down ServerDataItem into intersection types of the common part and extras.
Summary
In this chapter, we've been part of the evolution of a simplified yet reality-related project. Starting with a simple code base that couldn't be wrong, we added a lot of features and experienced the process of putting acceptable changes together and making the whole thing a mess.
We were always trying to write readable code by either naming things nicely or adding semantically necessary redundancies, but that won't help much as the complexity grows.
During the process, we've learned how offline synchronizing works. And with the help of the most common design patterns, such as the Strategy Pattern, we managed to split the project into small and controllable parts.
In the upcoming chapters, we'll catalog more useful design patterns with code examples in TypeScript, and try to apply those design patterns to specific issues.
Download
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.
The Mikado Method by Ola Ellnestam Daniel Brolund(26291)
Hello! Python by Anthony Briggs(25217)
Secrets of the JavaScript Ninja by John Resig Bear Bibeault(24447)
Kotlin in Action by Dmitry Jemerov(23536)
The Well-Grounded Java Developer by Benjamin J. Evans Martijn Verburg(22881)
Dependency Injection in .NET by Mark Seemann(22668)
OCA Java SE 8 Programmer I Certification Guide by Mala Gupta(21433)
Algorithms of the Intelligent Web by Haralambos Marmanis;Dmitry Babenko(20273)
Grails in Action by Glen Smith Peter Ledbrook(19343)
Adobe Camera Raw For Digital Photographers Only by Rob Sheppard(17056)
Sass and Compass in Action by Wynn Netherland Nathan Weizenbaum Chris Eppstein Brandon Mathis(16366)
Secrets of the JavaScript Ninja by John Resig & Bear Bibeault(14077)
Test-Driven iOS Development with Swift 4 by Dominik Hauser(12255)
Jquery UI in Action : Master the concepts Of Jquery UI: A Step By Step Approach by ANMOL GOYAL(11533)
A Developer's Guide to Building Resilient Cloud Applications with Azure by Hamida Rebai Trabelsi(10645)
Hit Refresh by Satya Nadella(9223)
The Kubernetes Operator Framework Book by Michael Dame(8579)
Exploring Deepfakes by Bryan Lyon and Matt Tora(8432)
Robo-Advisor with Python by Aki Ranin(8376)